home *** CD-ROM | disk | FTP | other *** search
/ Pascal Super Library / Pascal Super Library (CW International)(1997).bin / MATH / NRPAS13 / CORREL.DEM < prev    next >
Text File  |  1991-04-29  |  962b  |  45 lines

  1. PROGRAM d12r7(input,output);
  2. (* driver for routine CORREL *)
  3. CONST
  4.    n=64;
  5.    n2=128;      (* n2=2*nn *)
  6.    pi=3.1415927;
  7. TYPE
  8.    glnarray = ARRAY [1..n] OF real;
  9.    gl2narray = ARRAY [1..n2] OF real;
  10.    gldarray = gl2narray;
  11. VAR
  12.    i,j : integer;
  13.    cmp : real;
  14.    data1,data2 : glnarray;
  15.    ans : gl2narray;
  16.  
  17. (*$I MODFILE.PAS *)
  18. (*$I FOUR1.PAS *)
  19.  
  20. (*$I TWOFFT.PAS *)
  21.  
  22. (*$I REALFT.PAS *)
  23.  
  24. (*$I CORREL.PAS *)
  25.  
  26. BEGIN
  27.    FOR i := 1 to n DO BEGIN
  28.       data1[i] := 0.0;
  29.       IF ((i > ((n DIV 2)-(n DIV 8))) AND 
  30.          (i < ((n DIV 2)+(n DIV 8)))) THEN
  31.          data1[i] := 1.0;
  32.       data2[i] := data1[i]
  33.    END;
  34.    correl(data1,data2,n,ans);
  35. (* calculate directly *)
  36.    writeln ('n':3,'CORREL':14,'direct calc.':18);
  37.    FOR i := 0 to 16 DO BEGIN
  38.       cmp := 0.0;
  39.       FOR j := 1 to n DO BEGIN
  40.          cmp := cmp+data1[((i+j-1) MOD n)+1]*data2[j]
  41.       END;
  42.       writeln (i:3,ans[i+1]:15:6,cmp:15:6)
  43.    END
  44. END.
  45.